<!DOCTYPE html>
<html lang="en-us">
    <head><meta charset='utf-8'>
<meta name='viewport' content='width=device-width, initial-scale=1'><meta name='description' content='AlexNet AlexNet是一个卷积神经网络，由亚历克斯·克里泽夫斯基（Alex Krizhevsky）设计，与伊尔亚‧苏茨克维（Ilya Sutskever）和克里泽夫斯基的博士导师杰弗里·辛顿共同发表，而辛顿最初抵制他的学生的想法。
AlexNet参加了2012年9月30日举行的ImageNet大规模视觉识别挑战赛，达到最低的15.3%的Top-5错误率，比第二名低10.8个百分点。原论文的主要结论是，模型的深度对于提高性能至关重要，AlexNet的计算成本很高，但因在训练过程中使用了图形处理器（GPU）而使得计算具有可行性。
网络结构设计 AlexNet包含八层。前五层是卷积层，之后一些层是最大池化层，最后三层是全连接层。它使用了非饱和的ReLU激活函数，显示出比tanh和sigmoid更好的训练性能。
原设计中输入图像是 $3 \times 224 \times 224$ 大小，在我设计中使用到的数据集是MNIST，图像大小为 $1 \times 28 \times 28$，为了避免训练时间过长，只将大小调整了一倍，即 $1 \times 56 \times 56$。而整体结构参数（包括卷积层、池化、全连接层）根据原设计进行重新设计。
结构图  原设计结构图：   
 设计结构图：   
http://alexlenail.me/NN-SVG/AlexNet.html，这是制作结构图的网站，简单好用
模块说明    type patch size/stride output size     convolution $3\times3/2$ $28\times28\times32$   max pool $2\times2/2$ $14\times14\times32$   convolution $3\times3/1$ $14\times14\times96$   max pool $2\times2/2$ $7\times7\times96$   convolution $3\times3/1$ $7\times7\times192$   convolution $3\times3/1$ $7\times7\times128$   convolution $3\times3/1$ $7\times7\times256$   max pool $2\times2/2$ $3\times3\times256$   linear  $1\times1\times1024$   linear  $1\times1\times512$   linear  $1\times1\times10$    模型定性和定量分析 一共训练了20个周期，耗时大概1.'><title>基于CNN及其变体的图像分类</title>

<link rel='canonical' href='https://enrique518.gitee.io/p/cnn/'>

<link rel="stylesheet" href="/scss/style.min.css"><meta property='og:title' content='基于CNN及其变体的图像分类'>
<meta property='og:description' content='AlexNet AlexNet是一个卷积神经网络，由亚历克斯·克里泽夫斯基（Alex Krizhevsky）设计，与伊尔亚‧苏茨克维（Ilya Sutskever）和克里泽夫斯基的博士导师杰弗里·辛顿共同发表，而辛顿最初抵制他的学生的想法。
AlexNet参加了2012年9月30日举行的ImageNet大规模视觉识别挑战赛，达到最低的15.3%的Top-5错误率，比第二名低10.8个百分点。原论文的主要结论是，模型的深度对于提高性能至关重要，AlexNet的计算成本很高，但因在训练过程中使用了图形处理器（GPU）而使得计算具有可行性。
网络结构设计 AlexNet包含八层。前五层是卷积层，之后一些层是最大池化层，最后三层是全连接层。它使用了非饱和的ReLU激活函数，显示出比tanh和sigmoid更好的训练性能。
原设计中输入图像是 $3 \times 224 \times 224$ 大小，在我设计中使用到的数据集是MNIST，图像大小为 $1 \times 28 \times 28$，为了避免训练时间过长，只将大小调整了一倍，即 $1 \times 56 \times 56$。而整体结构参数（包括卷积层、池化、全连接层）根据原设计进行重新设计。
结构图  原设计结构图：   
 设计结构图：   
http://alexlenail.me/NN-SVG/AlexNet.html，这是制作结构图的网站，简单好用
模块说明    type patch size/stride output size     convolution $3\times3/2$ $28\times28\times32$   max pool $2\times2/2$ $14\times14\times32$   convolution $3\times3/1$ $14\times14\times96$   max pool $2\times2/2$ $7\times7\times96$   convolution $3\times3/1$ $7\times7\times192$   convolution $3\times3/1$ $7\times7\times128$   convolution $3\times3/1$ $7\times7\times256$   max pool $2\times2/2$ $3\times3\times256$   linear  $1\times1\times1024$   linear  $1\times1\times512$   linear  $1\times1\times10$    模型定性和定量分析 一共训练了20个周期，耗时大概1.'>
<meta property='og:url' content='https://enrique518.gitee.io/p/cnn/'>
<meta property='og:site_name' content='Enriqueliu'>
<meta property='og:type' content='article'><meta property='article:section' content='Post' /><meta property='article:published_time' content='2021-10-09T00:00:00&#43;00:00'/><meta property='article:modified_time' content='2021-10-09T00:00:00&#43;00:00'/><meta property='og:image' content='https://enrique518.gitee.io/p/cnn/Cover.png' />
<meta name="twitter:title" content="基于CNN及其变体的图像分类">
<meta name="twitter:description" content="AlexNet AlexNet是一个卷积神经网络，由亚历克斯·克里泽夫斯基（Alex Krizhevsky）设计，与伊尔亚‧苏茨克维（Ilya Sutskever）和克里泽夫斯基的博士导师杰弗里·辛顿共同发表，而辛顿最初抵制他的学生的想法。
AlexNet参加了2012年9月30日举行的ImageNet大规模视觉识别挑战赛，达到最低的15.3%的Top-5错误率，比第二名低10.8个百分点。原论文的主要结论是，模型的深度对于提高性能至关重要，AlexNet的计算成本很高，但因在训练过程中使用了图形处理器（GPU）而使得计算具有可行性。
网络结构设计 AlexNet包含八层。前五层是卷积层，之后一些层是最大池化层，最后三层是全连接层。它使用了非饱和的ReLU激活函数，显示出比tanh和sigmoid更好的训练性能。
原设计中输入图像是 $3 \times 224 \times 224$ 大小，在我设计中使用到的数据集是MNIST，图像大小为 $1 \times 28 \times 28$，为了避免训练时间过长，只将大小调整了一倍，即 $1 \times 56 \times 56$。而整体结构参数（包括卷积层、池化、全连接层）根据原设计进行重新设计。
结构图  原设计结构图：   
 设计结构图：   
http://alexlenail.me/NN-SVG/AlexNet.html，这是制作结构图的网站，简单好用
模块说明    type patch size/stride output size     convolution $3\times3/2$ $28\times28\times32$   max pool $2\times2/2$ $14\times14\times32$   convolution $3\times3/1$ $14\times14\times96$   max pool $2\times2/2$ $7\times7\times96$   convolution $3\times3/1$ $7\times7\times192$   convolution $3\times3/1$ $7\times7\times128$   convolution $3\times3/1$ $7\times7\times256$   max pool $2\times2/2$ $3\times3\times256$   linear  $1\times1\times1024$   linear  $1\times1\times512$   linear  $1\times1\times10$    模型定性和定量分析 一共训练了20个周期，耗时大概1."><meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:image" content='https://enrique518.gitee.io/p/cnn/Cover.png' />
    </head>
    <body class="
    article-page has-toc
">
    <script>
        (function() {
            const colorSchemeKey = 'StackColorScheme';
            if(!localStorage.getItem(colorSchemeKey)){
                localStorage.setItem(colorSchemeKey, "auto");
            }
        })();
    </script><script>
    (function() {
        const colorSchemeKey = 'StackColorScheme';
        const colorSchemeItem = localStorage.getItem(colorSchemeKey);
        const supportDarkMode = window.matchMedia('(prefers-color-scheme: dark)').matches === true;

        if (colorSchemeItem == 'dark' || colorSchemeItem === 'auto' && supportDarkMode) {
            

            document.documentElement.dataset.scheme = 'dark';
        } else {
            document.documentElement.dataset.scheme = 'light';
        }
    })();
</script>
<div class="container main-container flex 
    
        extended
    
">
    
        <div id="article-toolbar">
            <a href="https://enrique518.gitee.io/" class="back-home">
                <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-chevron-left" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  <path stroke="none" d="M0 0h24v24H0z"/>
  <polyline points="15 6 9 12 15 18" />
</svg>



                <span>返回</span>
            </a>
        </div>
    
<main class="main full-width">
    <article class="has-image main-article">
    <header class="article-header">
        <div class="article-image">
            <a href="/p/cnn/">
                <img src="/p/cnn/Cover_huf3ef803d74245607e9d70fb11c33a989_139419_800x0_resize_box_2.png"
                        srcset="/p/cnn/Cover_huf3ef803d74245607e9d70fb11c33a989_139419_800x0_resize_box_2.png 800w, /p/cnn/Cover_huf3ef803d74245607e9d70fb11c33a989_139419_1600x0_resize_box_2.png 1600w"
                        width="800" 
                        height="273" 
                        loading="lazy"
                        alt="Featured image of post 基于CNN及其变体的图像分类" />
                
            </a>
        </div>
    

    <div class="article-details">
    
    <header class="article-category">
        
            <a href="/categories/cnn/" >
                CNN
            </a>
        
            <a href="/categories/alexnet/" >
                AlexNet
            </a>
        
            <a href="/categories/googlenet/" >
                GoogLeNet
            </a>
        
            <a href="/categories/pytorch/" >
                pytorch
            </a>
        
    </header>
    

    <h2 class="article-title">
        <a href="/p/cnn/">基于CNN及其变体的图像分类</a>
    </h2>

    

    
    <footer class="article-time">
        
            <div>
                <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-calendar-time" width="56" height="56" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  <path stroke="none" d="M0 0h24v24H0z"/>
  <path d="M11.795 21h-6.795a2 2 0 0 1 -2 -2v-12a2 2 0 0 1 2 -2h12a2 2 0 0 1 2 2v4" />
  <circle cx="18" cy="18" r="4" />
  <path d="M15 3v4" />
  <path d="M7 3v4" />
  <path d="M3 11h16" />
  <path d="M18 16.496v1.504l1 1" />
</svg>
                <time class="article-time--published">Oct 09, 2021</time>
            </div>
        

        
            <div>
                <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-clock" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  <path stroke="none" d="M0 0h24v24H0z"/>
  <circle cx="12" cy="12" r="9" />
  <polyline points="12 7 12 12 15 15" />
</svg>



                <time class="article-time--reading">
                    阅读时长: 2 分钟
                </time>
            </div>
        
    </footer>
    
</div>
</header>

    <section class="article-content">
    <h2 id="alexnet">AlexNet</h2>
<p>AlexNet是一个卷积神经网络，由亚历克斯·克里泽夫斯基（Alex Krizhevsky）设计，与伊尔亚‧苏茨克维（Ilya Sutskever）和克里泽夫斯基的博士导师杰弗里·辛顿共同发表，而辛顿最初抵制他的学生的想法。</p>
<p>AlexNet参加了2012年9月30日举行的ImageNet大规模视觉识别挑战赛，达到最低的15.3%的Top-5错误率，比第二名低10.8个百分点。原论文的主要结论是，模型的深度对于提高性能至关重要，AlexNet的计算成本很高，但因在训练过程中使用了图形处理器（GPU）而使得计算具有可行性。</p>
<h3 id="网络结构设计">网络结构设计</h3>
<p>AlexNet包含八层。前五层是卷积层，之后一些层是最大池化层，最后三层是全连接层。它使用了非饱和的ReLU激活函数，显示出比tanh和sigmoid更好的训练性能。</p>
<p>原设计中输入图像是 $3 \times 224 \times 224$ 大小，在我设计中使用到的数据集是MNIST，图像大小为 $1 \times 28 \times 28$，为了避免训练时间过长，只将大小调整了一倍，即 $1 \times 56 \times 56$。而整体结构参数（包括卷积层、池化、全连接层）根据原设计进行重新设计。</p>
<h3 id="结构图">结构图</h3>
<ul>
<li>原设计结构图：</li>
</ul>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 286; 
			flex-basis: 687px"
	>
	<a href="/p/cnn/alexnet.png" data-size="1106x386">
		<img src="/p/cnn/alexnet.png"
			width="1106"
			height="386"
			srcset="/p/cnn/alexnet_hufa394f9240fe8b7c4a9ad95ab59bc6cf_268738_480x0_resize_box_2.png 480w, /p/cnn/alexnet_hufa394f9240fe8b7c4a9ad95ab59bc6cf_268738_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<ul>
<li>设计结构图：</li>
</ul>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 237; 
			flex-basis: 570px"
	>
	<a href="/p/cnn/alexnet2.png" data-size="1740x732">
		<img src="/p/cnn/alexnet2.png"
			width="1740"
			height="732"
			srcset="/p/cnn/alexnet2_hue5018788f04be5cf59f741ade2204cf9_81901_480x0_resize_box_2.png 480w, /p/cnn/alexnet2_hue5018788f04be5cf59f741ade2204cf9_81901_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<p><a class="link" href="http://alexlenail.me/NN-SVG/AlexNet.html"  target="_blank" rel="noopener"
    >http://alexlenail.me/NN-SVG/AlexNet.html</a>，这是制作结构图的网站，简单好用</p>
<h3 id="模块说明">模块说明</h3>
<table>
<thead>
<tr>
<th style="text-align:center">type</th>
<th style="text-align:center">patch size/stride</th>
<th style="text-align:center">output size</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/2$</td>
<td style="text-align:center">$28\times28\times32$</td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$14\times14\times32$</td>
</tr>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$14\times14\times96$</td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$7\times7\times96$</td>
</tr>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$7\times7\times192$</td>
</tr>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$7\times7\times128$</td>
</tr>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$7\times7\times256$</td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$3\times3\times256$</td>
</tr>
<tr>
<td style="text-align:center">linear</td>
<td style="text-align:center"></td>
<td style="text-align:center">$1\times1\times1024$</td>
</tr>
<tr>
<td style="text-align:center">linear</td>
<td style="text-align:center"></td>
<td style="text-align:center">$1\times1\times512$</td>
</tr>
<tr>
<td style="text-align:center">linear</td>
<td style="text-align:center"></td>
<td style="text-align:center">$1\times1\times10$</td>
</tr>
</tbody>
</table>
<h3 id="模型定性和定量分析">模型定性和定量分析</h3>
<p>一共训练了20个周期，耗时大概1.5h，第10轮训练后，损失函数大幅度减小，模型的鲁棒性提高</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 124; 
			flex-basis: 298px"
	>
	<a href="/p/cnn/train.png" data-size="1294x1040">
		<img src="/p/cnn/train.png"
			width="1294"
			height="1040"
			srcset="/p/cnn/train_hu930582e92a55dd8423942b2a2b916bd3_672214_480x0_resize_box_2.png 480w, /p/cnn/train_hu930582e92a55dd8423942b2a2b916bd3_672214_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<p>预测总体测试数据集的准确率为94%</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 349; 
			flex-basis: 839px"
	>
	<a href="/p/cnn/acc.png" data-size="1252x358">
		<img src="/p/cnn/acc.png"
			width="1252"
			height="358"
			srcset="/p/cnn/acc_hu332c6dd7808d912351c470a8a229a92d_90414_480x0_resize_box_2.png 480w, /p/cnn/acc_hu332c6dd7808d912351c470a8a229a92d_90414_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<p>预测每个类的准确率，发现预测数字1的准确率最高，高达98.4%，而预测数字2和数字5的准确率较低，只达到90.3%和90.8%，而预测错误中，数字2预测成5的概率最大，数字5预测成3的概率最大</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 169; 
			flex-basis: 406px"
	>
	<a href="/p/cnn/acc2.png" data-size="1040x614">
		<img src="/p/cnn/acc2.png"
			width="1040"
			height="614"
			srcset="/p/cnn/acc2_hu7eee4c2bc15a991157039055f698e196_354374_480x0_resize_box_2.png 480w, /p/cnn/acc2_hu7eee4c2bc15a991157039055f698e196_354374_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<h2 id="googlenet">GoogLeNet</h2>
<p>GoogLeNet是一个代号为 Inception 的深度卷积神经网络架构，也称为Inception V1。该网络在ILSVRC14分类任务第一（classification）、检测任务第一（detection），这是一个22层的网络。</p>
<h3 id="网络结构设计-1">网络结构设计</h3>
<ul>
<li>Inception 结构：
该结构有4个分支（包括卷积层和池化），每个分支堆叠后的通道数作为下一层的输入</li>
</ul>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 145; 
			flex-basis: 348px"
	>
	<a href="/p/cnn/inception.png" data-size="520x358">
		<img src="/p/cnn/inception.png"
			width="520"
			height="358"
			srcset="/p/cnn/inception_hu01c45b33ea9f9d9c6fd0dd21fbefeec9_109967_480x0_resize_box_2.png 480w, /p/cnn/inception_hu01c45b33ea9f9d9c6fd0dd21fbefeec9_109967_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<ul>
<li>辅助分类器：
<ul>
<li>一个滤波器大小4×4，步长为1的平均池化层，Inception(4a)阶段的输出为256×7×7，(4d)的输出为264×7×7。</li>
<li>具有128个滤波器的1×1卷积，用于降维和修正线性激活。</li>
<li>一个全连接层，具有1024个单元和修正线性激活。</li>
<li>20%输出的dropout层。</li>
<li>一个全连接层，具有10个单元。</li>
</ul>
</li>
</ul>
<p>原设计中输入图像是 $3 \times 224 \times 224$ 大小，在我设计中使用到的数据集是MNIST，图像大小为 $1 \times 28 \times 28$，为了避免训练时间过长，只将大小调整了一倍，即 $1 \times 56 \times 56$。而整体结构参数（包括卷积层、池化、Inception 层、全连接层）根据原设计进行重新设计。</p>
<h3 id="结构图-1">结构图</h3>
<ul>
<li>设计结构图：
总有22层，具体可分为：
<ul>
<li>卷积层和池化</li>
<li>2个Inception层（3a和3b），辅助分类器aux1</li>
<li>5个Inception层（4a～4e），辅助分类器aux2</li>
<li>2个Inception层（5a和5b）</li>
<li>平均池化、全连接层</li>
<li>LocalRespNorm 和 softmax 在设计中不实现</li>
</ul>
</li>
</ul>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 36; 
			flex-basis: 86px"
	>
	<a href="/p/cnn/googlenet.jpg" data-size="988x2735">
		<img src="/p/cnn/googlenet.jpg"
			width="988"
			height="2735"
			srcset="/p/cnn/googlenet_hudeb5c6762f2d67708e42feebfb00097d_183301_480x0_resize_q75_box.jpg 480w, /p/cnn/googlenet_hudeb5c6762f2d67708e42feebfb00097d_183301_1024x0_resize_q75_box.jpg 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<h3 id="模块说明-1">模块说明</h3>
<table>
<thead>
<tr>
<th style="text-align:center">type</th>
<th style="text-align:center">patch size/stride</th>
<th style="text-align:center">output size</th>
<th style="text-align:center">#1 x 1</th>
<th style="text-align:center">#3 x 3 reduce</th>
<th style="text-align:center"># 5 x 5</th>
<th style="text-align:center"># 5 x 5 reduce</th>
<th style="text-align:center"># 5 x 5</th>
<th style="text-align:center">pool proj</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$56\times56\times32$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$28\times28\times32$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">convolution</td>
<td style="text-align:center">$3\times3/1$</td>
<td style="text-align:center">$28\times28\times96$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$14\times14\times96$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">inception(3a)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$14\times14\times128$</td>
<td style="text-align:center">32</td>
<td style="text-align:center">48</td>
<td style="text-align:center">64</td>
<td style="text-align:center">8</td>
<td style="text-align:center">16</td>
<td style="text-align:center">16</td>
</tr>
<tr>
<td style="text-align:center">inception(3b)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$14\times14\times240$</td>
<td style="text-align:center">64</td>
<td style="text-align:center">64</td>
<td style="text-align:center">96</td>
<td style="text-align:center">16</td>
<td style="text-align:center">48</td>
<td style="text-align:center">32</td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$7\times7\times240$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">inception(4a)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$7\times7\times256$</td>
<td style="text-align:center">96</td>
<td style="text-align:center">48</td>
<td style="text-align:center">104</td>
<td style="text-align:center">8</td>
<td style="text-align:center">24</td>
<td style="text-align:center">32</td>
</tr>
<tr>
<td style="text-align:center">inception(4b)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$7\times7\times256$</td>
<td style="text-align:center">80</td>
<td style="text-align:center">56</td>
<td style="text-align:center">112</td>
<td style="text-align:center">12</td>
<td style="text-align:center">32</td>
<td style="text-align:center">32</td>
</tr>
<tr>
<td style="text-align:center">inception(4c)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$7\times7\times256$</td>
<td style="text-align:center">64</td>
<td style="text-align:center">64</td>
<td style="text-align:center">128</td>
<td style="text-align:center">12</td>
<td style="text-align:center">32</td>
<td style="text-align:center">32</td>
</tr>
<tr>
<td style="text-align:center">inception(4d)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$7\times7\times264$</td>
<td style="text-align:center">56</td>
<td style="text-align:center">72</td>
<td style="text-align:center">144</td>
<td style="text-align:center">16</td>
<td style="text-align:center">32</td>
<td style="text-align:center">32</td>
</tr>
<tr>
<td style="text-align:center">inception(4e)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$7\times7\times416$</td>
<td style="text-align:center">128</td>
<td style="text-align:center">80</td>
<td style="text-align:center">160</td>
<td style="text-align:center">16</td>
<td style="text-align:center">64</td>
<td style="text-align:center">64</td>
</tr>
<tr>
<td style="text-align:center">max pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$3\times3\times416$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">inception(5a)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$3\times3\times416$</td>
<td style="text-align:center">128</td>
<td style="text-align:center">80</td>
<td style="text-align:center">160</td>
<td style="text-align:center">16</td>
<td style="text-align:center">64</td>
<td style="text-align:center">64</td>
</tr>
<tr>
<td style="text-align:center">inception(5b)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$3\times3\times512$</td>
<td style="text-align:center">192</td>
<td style="text-align:center">96</td>
<td style="text-align:center">192</td>
<td style="text-align:center">24</td>
<td style="text-align:center">64</td>
<td style="text-align:center">64</td>
</tr>
<tr>
<td style="text-align:center">avg pool</td>
<td style="text-align:center">$2\times2/2$</td>
<td style="text-align:center">$1\times1\times512$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">dropout(20%)</td>
<td style="text-align:center"></td>
<td style="text-align:center">$1\times1\times512$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="text-align:center">linear</td>
<td style="text-align:center"></td>
<td style="text-align:center">$1\times1\times10$</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
</table>
<h3 id="模型定性和定量分析-1">模型定性和定量分析</h3>
<p>一共训练了10个周期，耗时大概4h，第4轮训练后，损失函数直接为0.000，模型的鲁棒性达到最高</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 178; 
			flex-basis: 428px"
	>
	<a href="/p/cnn/train2.png" data-size="1282x718">
		<img src="/p/cnn/train2.png"
			width="1282"
			height="718"
			srcset="/p/cnn/train2_hu8bd8d1d1e13dd9bac1a094a7d40d6b0c_456842_480x0_resize_box_2.png 480w, /p/cnn/train2_hu8bd8d1d1e13dd9bac1a094a7d40d6b0c_456842_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<p>预测总体测试数据集的准确率为98%</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 332; 
			flex-basis: 797px"
	>
	<a href="/p/cnn/acc3.png" data-size="1236x372">
		<img src="/p/cnn/acc3.png"
			width="1236"
			height="372"
			srcset="/p/cnn/acc3_hue3b7af449b09e75fac8251581bd9f101_250989_480x0_resize_box_2.png 480w, /p/cnn/acc3_hue3b7af449b09e75fac8251581bd9f101_250989_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<p>预测每个类的准确率，发现预测数字0和数字1的准确率比较高，高达99.7%，而预测数字5的准确率较低，但也达到了97.1%，而预测错误中，数字5预测成2的概率最大</p>
<p><figure 
	
		class="gallery-image" 
		style="
			flex-grow: 191; 
			flex-basis: 459px"
	>
	<a href="/p/cnn/acc4.png" data-size="1306x682">
		<img src="/p/cnn/acc4.png"
			width="1306"
			height="682"
			srcset="/p/cnn/acc4_huf122868e7cb7a29a76938290d748512e_158946_480x0_resize_box_2.png 480w, /p/cnn/acc4_huf122868e7cb7a29a76938290d748512e_158946_1024x0_resize_box_2.png 1024w"
			loading="lazy"
			>
	</a>
	
</figure></p>
<h2 id="google-colab">Google Colab</h2>
<p>使用 colab 的好处：</p>
<ul>
<li>可以使用gpu或者tpu加速训练，但gpu分配成功率非常低，使用了两周，我只成功了一次</li>
<li>云端运行，避免在本机训练过久导致机器发热</li>
<li>可长时间训练，前提是保持网络通畅</li>
<li>colab能使用的库比较丰富，版本兼容性也比本机更好</li>
<li>对比Kaggle，简洁的界面和教程更易上手，代码可在线修改</li>
</ul>

</section>


    <footer class="article-footer">
    

    
    <section class="article-copyright">
        <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-copyright" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  <path stroke="none" d="M0 0h24v24H0z"/>
  <circle cx="12" cy="12" r="9" />
  <path d="M14.5 9a3.5 4 0 1 0 0 6" />
</svg>



        <span>Licensed under CC BY-NC-SA 4.0</span>
    </section>
    </footer>


    
        <link 
                rel="stylesheet" 
                href="https://cdn.jsdelivr.net/npm/katex@0.13.13/dist/katex.min.css"integrity="sha384-RZU/ijkSsFbcmivfdRBQDtwuwVqK7GMOw6IMvKyeWL2K5UAlyp6WonmB8m7Jd0Hn"crossorigin="anonymous"
            ><script 
                src="https://cdn.jsdelivr.net/npm/katex@0.13.13/dist/katex.min.js"integrity="sha384-pK1WpvzWVBQiP0/GjnvRxV4mOb0oxFuyRxJlk6vVw146n3egcN5C925NCP7a7BY8"crossorigin="anonymous"
                defer="true"
                >
            </script><script 
                src="https://cdn.jsdelivr.net/npm/katex@0.13.13/dist/contrib/auto-render.min.js"integrity="sha384-vZTG03m&#43;2yp6N6BNi5iM4rW4oIwk5DfcNdFfxkk9ZWpDriOkXX8voJBFrAO7MpVl"crossorigin="anonymous"
                defer="true"
                >
            </script><script>
    window.addEventListener("DOMContentLoaded", () => {
        renderMathInElement(document.querySelector(`.article-content`), {
            delimiters: [
                { left: "$$", right: "$$", display: true },
                { left: "$", right: "$", display: false },
                { left: "\\(", right: "\\)", display: false },
                { left: "\\[", right: "\\]", display: true }
            ]
        });})
</script>
    
</article>

    <aside class="related-contents--wrapper">
    
    
</aside>

     
     
        
    <div class="disqus-container">
    <div id="disqus_thread"></div>
<script type="application/javascript">
    var disqus_config = function () {
    
    
    
    };
    (function() {
        if (["localhost", "127.0.0.1"].indexOf(window.location.hostname) != -1) {
            document.getElementById('disqus_thread').innerHTML = 'Disqus comments not available by default when the website is previewed locally.';
            return;
        }
        var d = document, s = d.createElement('script'); s.async = true;
        s.src = '//' + "hugo-theme-stack" + '.disqus.com/embed.js';
        s.setAttribute('data-timestamp', +new Date());
        (d.head || d.body).appendChild(s);
    })();
</script>
<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="https://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div>

<style>
    .disqus-container {
        background-color: var(--card-background);
        border-radius: var(--card-border-radius);
        box-shadow: var(--shadow-l1);
        padding: var(--card-padding);
    }
</style>

<script>
    window.addEventListener('onColorSchemeChange', (e) => {
        if (DISQUS) {
            DISQUS.reset({
                reload: true
            });
        }
    })
</script>

    

    <footer class="site-footer">
    <section class="copyright">
        &copy; 
        
            2020 - 
        
        2022 Enriqueliu
    </section>
    
    <section class="powerby">
        Built with <a href="https://gohugo.io/" target="_blank" rel="noopener">Hugo</a> <br />
        Theme <b><a href="https://github.com/CaiJimmy/hugo-theme-stack" target="_blank" rel="noopener" data-version="3.2.0">Stack</a></b> designed by <a href="https://jimmycai.com" target="_blank" rel="noopener">Jimmy</a>
    </section>
</footer>


    
<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">

    
    <div class="pswp__bg"></div>

    
    <div class="pswp__scroll-wrap">

        
        <div class="pswp__container">
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
            <div class="pswp__item"></div>
        </div>

        
        <div class="pswp__ui pswp__ui--hidden">

            <div class="pswp__top-bar">

                

                <div class="pswp__counter"></div>

                <button class="pswp__button pswp__button--close" title="Close (Esc)"></button>

                <button class="pswp__button pswp__button--share" title="Share"></button>

                <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button>

                <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button>

                
                
                <div class="pswp__preloader">
                    <div class="pswp__preloader__icn">
                        <div class="pswp__preloader__cut">
                            <div class="pswp__preloader__donut"></div>
                        </div>
                    </div>
                </div>
            </div>

            <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap">
                <div class="pswp__share-tooltip"></div>
            </div>

            <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)">
            </button>

            <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)">
            </button>

            <div class="pswp__caption">
                <div class="pswp__caption__center"></div>
            </div>

        </div>

    </div>

</div><script 
                src="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe.min.js"integrity="sha256-ePwmChbbvXbsO02lbM3HoHbSHTHFAeChekF1xKJdleo="crossorigin="anonymous"
                defer="true"
                >
            </script><script 
                src="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe-ui-default.min.js"integrity="sha256-UKkzOn/w1mBxRmLLGrSeyB4e1xbrp4xylgAWb3M42pU="crossorigin="anonymous"
                defer="true"
                >
            </script><link 
                rel="stylesheet" 
                href="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/default-skin/default-skin.css"integrity="sha256-c0uckgykQ9v5k&#43;IqViZOZKc47Jn7KQil4/MP3ySA3F8="crossorigin="anonymous"
            ><link 
                rel="stylesheet" 
                href="https://cdn.jsdelivr.net/npm/photoswipe@4.1.3/dist/photoswipe.css"integrity="sha256-SBLU4vv6CA6lHsZ1XyTdhyjJxCjPif/TRkjnsyGAGnE="crossorigin="anonymous"
            >

            </main>
    
        <aside class="sidebar right-sidebar sticky">
            <section class="widget archives">
                <div class="widget-icon">
                    <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-hash" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
  <path stroke="none" d="M0 0h24v24H0z"/>
  <line x1="5" y1="9" x2="19" y2="9" />
  <line x1="5" y1="15" x2="19" y2="15" />
  <line x1="11" y1="4" x2="7" y2="20" />
  <line x1="17" y1="4" x2="13" y2="20" />
</svg>



                </div>
                <h2 class="widget-title section-title">目录</h2>
                
                <div class="widget--toc">
                    <nav id="TableOfContents">
  <ol>
    <li><a href="#alexnet">AlexNet</a>
      <ol>
        <li><a href="#网络结构设计">网络结构设计</a></li>
        <li><a href="#结构图">结构图</a></li>
        <li><a href="#模块说明">模块说明</a></li>
        <li><a href="#模型定性和定量分析">模型定性和定量分析</a></li>
      </ol>
    </li>
    <li><a href="#googlenet">GoogLeNet</a>
      <ol>
        <li><a href="#网络结构设计-1">网络结构设计</a></li>
        <li><a href="#结构图-1">结构图</a></li>
        <li><a href="#模块说明-1">模块说明</a></li>
        <li><a href="#模型定性和定量分析-1">模型定性和定量分析</a></li>
      </ol>
    </li>
    <li><a href="#google-colab">Google Colab</a></li>
  </ol>
</nav>
                </div>
            </section>
        </aside>
    

        </div>
        <script 
                src="https://cdn.jsdelivr.net/npm/node-vibrant@3.1.5/dist/vibrant.min.js"integrity="sha256-5NovOZc4iwiAWTYIFiIM7DxKUXKWvpVEuMEPLzcm5/g="crossorigin="anonymous"
                defer="false"
                >
            </script><script type="text/javascript" src="/ts/main.js" defer></script>
<script>
    (function () {
        const customFont = document.createElement('link');
        customFont.href = "https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap";

        customFont.type = "text/css";
        customFont.rel = "stylesheet";

        document.head.appendChild(customFont);
    }());
</script>

    </body>
</html>
